// pages/operation/operation.js
Page({

  /**
   * 页面的初始数据
   *  undefined 未定义的  有可能有值 也有可能没有值
   */
  data: {
      areaId:undefined,
      areaName:'',
      priority:'',
      addUrl:"http://127.0.0.1:8080/demo/area/addArea",
      modifyUrl:"http://127.0.0.1:8080/demo/area/updateArea"
  },

  /**
   * 生命周期函数--监听页面加载
   *  因为编辑页面没有返回按钮,所以 使用加载的方式 (当然 你也可以使用显示的方法)
   */
  onLoad: function (options) {
    // 保存路径
    var that = this;
    // 页面初始化 options为页面跳转带来参数
    this.setData({
      // 从初始化的 options中获取 areaId
      areaId: options.areaId
    });
    // 判断areaId 是否含有值,如果有值,说明是修改操作,如果没有值,说明是添加操作
    if(options.areaId == undefined){  // 当时添加添加操作后,就不用从数据库获取数据用于回显了
      return;
    }
    // 如果是修改操作,从数据库中获取数据用于回显
    wx.request({
      // 设置请求地址
      url: 'http://127.0.0.1:8080/demo/area/getArea',
      // 设置请求参数
      data:{"id":options.areaId},
      // 设置请求方式
      method:"GET",
      // 对回显进行判断
      success:function(res){
        // 获取返回的对象
        var area = res.data.area;
        // 判断返回的对象是否有值
        if(area == undefined){ // 如果没有值 抛出异常
            var toastText = '获取数据失败' + res.data.errMsg;
            // 调用方法显示提示
            wx.showModal({
              // 设置提示显示的内容
              title: toastText,
              // 设置图标 (如果没有 为空)
              icon:'',
              // 设置持续时间
              duration:2000
            });
        }else{ // 如果返回的对象不为空
          that.setData({
            // 设置返回的地域名
            areaName:area.areaName,
            // 设置返回的优先级
            priority:area.priority
          });
        }
      }
    })

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },
  /**
   * 提交表单的方法
   *  e中包含着表单中的信息
   */
  formSubmit:function(e){
    var that = this;
    // 获取表单中的信息
    var formData = e.detail.value;
    // 获取连接信息
    var Url = that.data.addUrl;
    // 判断areaId是否含有值
    if(that.data.areaId != undefined){
      // 如果有值 获取areaid 并保存到formdata中
      formData.areaId=that.data.areaId;
      // 因为areaId是有信息的 说明是修改操作的
      Url = that.data.modifyUrl;
    }
    // 调用微信的请求方法
    wx.request({
      // 设置请求路径
      url: Url,
      // 把字符串装换成json类型的参数
      data:JSON.stringify(formData),
      // 设置请求方式
      method:'POST',
      // 设置请求头
      header:{
        'Content-Type':'application/json'
      },
      // 请求成功后返回的值
      success:function(res){
          // 获取请求后返回的值
          var result = res.data.success;
          // 设置弹出的框中显示的内容
          var toastText = '操作成功';
          // 判断是否成功
          if(result != true){ // 失败
            toastText = '操作失败'+res.data.errMsg;
          }
          // 弹出提示框
          wx.showModal({
            // 设置弹出的内容
            title: toastText,
            icon:'',
            // 设置持续时间
            duration:2000
          });
          // 判断是否id为空 如果为空 也就是添加成功后,跳转到列表页面
          if(that.data.areaId == undefined){
            // 重定向
            wx.redirectTo({
              url: '../list/list',
            })
          }
      }
    })
  }
})